package com.ruoyi.project.manage.detail.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.project.manage.detail.domain.ProjectInvestDetail;

/**
 * 资金落实明细记录Service接口
 * 
 * @author fangkun
 * @date 2022-05-29
 */
public interface IProjectInvestDetailService 
{
    /**
     * 查询资金落实明细记录
     * 
     * @param projectInvestDetailId 资金落实明细记录主键
     * @return 资金落实明细记录
     */
    ProjectInvestDetail selectProjectInvestDetailByProjectInvestDetailId(Long projectInvestDetailId);

    /**
     * 按月统计项目投资情况
     * @param projectId
     * @return
     */
    List<Map> statProjectInvest(Long projectId);
    /**
     * 查询资金落实明细记录列表
     * 
     * @param projectInvestDetail 资金落实明细记录
     * @return 资金落实明细记录集合
     */
    List<ProjectInvestDetail> selectProjectInvestDetailList(ProjectInvestDetail projectInvestDetail);

    /**
     * 新增资金落实明细记录
     * 
     * @param projectInvestDetail 资金落实明细记录
     * @return 结果
     */
    int insertProjectInvestDetail(ProjectInvestDetail projectInvestDetail);

    /**
     * 修改资金落实明细记录
     * 
     * @param projectInvestDetail 资金落实明细记录
     * @return 结果
     */
    int updateProjectInvestDetail(ProjectInvestDetail projectInvestDetail);

    /**
     * 批量删除资金落实明细记录
     * 
     * @param projectInvestDetailIds 需要删除的资金落实明细记录主键集合
     * @return 结果
     */
    int deleteProjectInvestDetailByProjectInvestDetailIds(String projectInvestDetailIds);

    /**
     * 删除资金落实明细记录信息
     * 
     * @param projectInvestDetailId 资金落实明细记录主键
     * @return 结果
     */
    int deleteProjectInvestDetailByProjectInvestDetailId(Long projectInvestDetailId);
}
